1. Field of the Invention
The present invention relates to a storage system and a management method therefor, and, more particularly, to a network storage system, a storage-device management method, and a control program.
2. Description of the Related Art
Recently, the importance of security enhancement, such as prevention of private information leakage, has risen, and a network boot system has been proposed in which all information is managed and operated on a server without providing a PC (personal computer) of a client with a storage device, such as a hard disk, and the client PC is booted from information on the server. FIG. 6 illustrates one example of the system formed as described above. Clients 10 are connected to a server 90 via a network 20. The server 90 can form a boot image of a client PC on the server from a boot image stored in a storage device 40 and information, such as TempA, unique to each client, can transmit the resulting boot image, and can boot the client PC.
Recently, an iSCSI (Internet Small Computer System Interface) protocol has appeared according to which a client PC and a storage can be directly connected together via a network without being connected through a server. In the iSCSI protocol, a remote storage connected by the Internet can be logically shown in the same way as a local storage using an SCSI protocol by putting an SCSI command or data on a TCP/IP packet. The use of the iSCSI protocol makes it possible to remove the above-mentioned server and to simplify a system structure.
FIG. 7 illustrates a structure in which a client 10 and a storage 40 are directly connected together via a network 20 by use of the iSCSI protocol to eliminate a server. The storage 40 includes a host interface 50 that performs read/write processing from the client 10, a cache memory 60 that temporarily stores the data of a logical disk (LDK) 70, the logical disk (LDK) 70 logically formed on one or more physical disks, and a control unit 80 that controls these elements. In the structure formed as described above, in which the client 10 and the storage 40 are directly connected together, the logical disk (LDK) 70 is allocated to each client 10, and hence each LDK 70 is required to be shown to each client by means of an access management table 81 provided in the control unit 80. A method for showing each LDK to each client by means of the access management table 81 is known by, for example, Japanese Published Unexamined Patent Application No. 2000-181636 (NEC) (Patent Document 1). FIG. 7 shows an example in which an LDK1 is allocated to client A, an LDK2 is allocated to client B, and an LDK3 is allocated to client C.
The structure mentioned above has the following problems.
A first problem is that much time is consumed to prepare an LDK used for booting. The LDK70 provided in the storage 40 is required to be made for each client 10, and is made according to the following procedure. First, a master LDK is made, and an image used for booting is stored in this LDK (in FIG. 7, LDK0 is used as the master LDK). Thereafter, an LDK used for a client is made, and all of the contents of the master LDK0 are copied onto this client LDK. This copy operation have to be carried out by the number of client LDKs (in FIG. 7, LDK1, LDK2, and LDK3 are made for three clients, respectively, and the copy operation from the LDK0 to each LDK is carried out). Thereafter, an access management table is set to permit access from each client. The reason why copying from the master LDK0 onto the client LDK is required is to deal with a case in which setting change or log-writing is performed from a client upon booting. A difference created by changing is stored in each LDK (in FIG. 7, the difference is shown as TempA, TempB, and TempC).
A second problem is that the capacity efficiency of the entire storage is low. The client LDKs are made by copying from the master LDK, and the contents stored in one of the client LDKs are the same as each of the other client LDKs if the change difference is excluded from the contents of each client LDK. Normally, the change difference is small with respect to the image used for booting, and hence a plurality of client LDKs in which each client LDK contains almost the same contents as the other client LDKs is provided in the storage. This problem is worsened in proportion to the number of clients to be connected.
A third problem is that the use efficiency of the cache memory in the storage is low. The cache memory is used for each LDK when a plurality of clients make reading requests, respectively. Likewise, in this case, the LDKs have almost the same contents, respectively, and hence wasteful operations are performed in the same way as in the second problem.
Without being limited to the network boot system, these three problems also exist in a network storage system, such as a book reading/browsing system (which has a function to send book data from a master LDK to a client and to allow the client to individually attach a bookmarker to the book data), in which each client is directly connected to a storage so as to exchange information with each other and in which the clients share the information with each other.
Therefore, in this description, the term “network storage system” is hereinafter used as a fairly wide concept including the “network boot system.”